1. Field of the Invention
The present invention relates to a system and method for signal analysis and, more particularly, to a system and method for analysis and filtering of signals in a telecommunications network.
2. Description of the Related Art
Contemporary telecommunications systems can be elaborate and heterogeneously created. Many attributes of these systems are based on early electric communication systems and modern digital systems are often engineered to recreate the some of the familiar characteristics of telephone networks when they were composed mainly of copper wire “pairs.”
One aspect of land line communication familiar to telephone users is the tendency of signals to be echoed back to the source of the signal. Some echo may be desirable when it gives a speaker the impression that the phone is “live” and picking up their speech. However, repeated echoes or echoes delayed by a fraction of a second can make telephone communication difficult or impossible. In addition, speakerphone systems are subject to echoes caused by room acoustics and a telecommunications network. Echoes can be especially problematic for computerized speech recognition systems, which often require that echo signals be removed so that recognition can be accurate.
Signal processing techniques, using digital signal processors in consumer devices and telecommunications hardware, have been developed to control reverberant signals. Reflected signals may originate from a number of sources, vary across different frequency ranges and are subject to different delays.
A known two-wire analog telecommunications system 100 is shown in FIG. 1. As shown in FIG. 1, the telecommunications system 100 includes two hybrids 140 connected between two wires 130. A hybrid 140 is a filter that matches the impedance from one part of the network to another and is a component of a telecommunications system that, for example, causes echoes in a telephone network.
A telecommunications system may have many junction points, each potentially capable of both signal transmission and reflection, and may include hybrids at each junction point. For example, a network may include a “near-end” hybrid located near a signal transmission point. The near-end hybrid includes specific reflection characteristics familiar to telephone users, allowing for the near-end echo that gives a telephone its live microphone quality. A near-end echo canceller may be employed to protect a “far-end” caller (i.e., a caller at the signal receiving point) from the near-end echo. A near-end echo canceller is used, for example, when a telecommunications system is simultaneously “playing” output and “listening” to input. The use of a near-end echo canceller helps a system avoid confusing its own output with a signal from the far-end. Some systems, such as speech recognition and speakerphone systems, have encountered difficulty when attempting to remove the near-end echo.
A far-end echo develops at a network junction at a receiver side. The far-end echo can be a large fraction of a second and may be noticeable when making international or other calls over large geographical distances. A far-end echo canceller may be employed to protect a near-end caller from the far-end echo. However, many commercial echo cancellation systems are not capable of removing far-end echoes with long delays (e.g., a large fraction of a second) because such echoes require large and complex filters for their removal.
Telecommunications systems may employ a variety of different subsystems with different capabilities throughout the network environment. For example, a public branch exchange (PBX) system or an integrated voice response system (IVR) are both examples of systems where a number of separate telephone channels or lines are controlled by a single computer, with specialized compute resources dedicated to each channel. The compute resources are known as “line cards.”
FIG. 2 shows a conventional telecommunications system 200 employing a host computer/processor 210 for controlling a plurality of line cards 220 linked to channels 225 of the network 250. Known line cards 220 have limited amounts of processing power and memory, but can be used for simple signal processing. Examples of line card functions include buffering of digital signals during conversion and transmission, tone detection for switch signals, and signal processing for echo cancellation. In the last case, complete echo cancellation systems for near end echo may be incorporated into the line cards' hardware and software. In contrast, high memory and processing requirements for far-end echo cancellation have made incorporation of far-end echo cancellation systems into line cards very costly.
An echo cancellation system incorporated into a line card may include some form of an adaptive error-feedback driven filtering algorithm known to one of ordinary skill in the art, such as least mean square (LMS) adaptive filtering. Given an input signal, and an approximate measure of an expected hybrid echo, an LMS algorithm can determine the optimal filter tap coefficients to remove most of the output signal as it is reflected back to the input, allowing, for example, a speech recognition system to listen for a party on the other end of the telephone conversation to begin speaking. However, a problem exists in that computation of the optimal filter coefficients may exceed the computational capabilities of known line cards.
In many applications, it is also desirable to attempt to compute filter coefficients that would enable the cancellation of far end echo signals and other effects, such as room reverberations caused by a speaker in a speakerphone. Attempting to compute such coefficients using the known LMS or recursive least squares (RLS) algorithms also presents a problem in that such computations would exceed the memory buffering capabilities of most known line card digital signal processors.
Therefore, there exists a need for a system and method of signal processing for echo cancellation that accounts for the limited computational resources allocated to line cards in a telecommunications system.